package com.hkemmm.utils;

import org.apache.commons.lang3.StringUtils;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class MyUtils {
    public static <T> T getInstence(Class<T> clazz){
        T t = null;

        try {
            t = clazz.newInstance();
        } catch (InstantiationException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }

        return t;
    }

    /**
     * 指定字符串日期转化位日期类型
     * @param strDate   字符串日期
     * @param strDateFormate    转化格式
     * @return  转化后日期
     */
    public static Date coverStrToDate(String strDate,String strDateFormate){
        Date date = null;
        if(strDateFormate == null || strDateFormate.equals("")){
            strDateFormate = "yyyy-MM-dd";
        }
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat(strDateFormate);

        // 将日期类型字符串转换为Date类型
        if (StringUtils.isNotEmpty(strDate)) {
            try {
                date = simpleDateFormat.parse(strDate);
            } catch (ParseException e) {
                e.printStackTrace();
            }
        }

        return date;
    }

    /**
     * 指定日期转化位字符串日期
     * @param date  date型日期
     * @param strDateFormate    转化格式
     * @return  转化后字符串日期
     */
    public static String coverDateToStr(Date date,String strDateFormate){
        String s ="";
        if(date == null){
            date = new Date();
        }
        if(strDateFormate == null || strDateFormate.equals("")){
            strDateFormate = "yyyy-MM-dd";
        }
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat(strDateFormate);

        s = simpleDateFormat.format(date);

        return s;
    }
}
